Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

325
Vistas
"mensaje": "errorMongooseError: Operación `userinfos.insertOne()` se agotó el tiempo de espera después de 10000ms"

Actualmente estoy creando una nueva API con MongoDB y Express, y actualmente tengo este "mensaje" de problema:

"errorMongooseError: el almacenamiento en búfer de Operation userinfos.insertOne() se agotó después de 10000 ms"

Esta es la forma en que configuro mis llamadas API:

 const express=require('express'); const router=express.Router(); const Userinfo=require("../Models/Userinfo") router.get('/',(req,res)=>{ res.send("we are Post") }); router.get('/Specic', async(req,res)=>{ try{ const data=await Userinfo.find(); console.log(data); res.json(data) } catch(err) { res.json({message:err}) } }) router.post("/",(req,res)=>{ const test= new Userinfo({ "Fname":req.body.Fname, "Lname":req.body.Lname }); console.log(test); test.save().then(data=>{ res.json(data); }).catch((err)=>{res.json({message:"error"+err})}) }) module.exports=router;

Model Definiendo así Userinfo.js

 const mongoose=require('mongoose'); /*const PoistSchema=mongoose.Schema({ Fname:String, Lname:String, DOB:Date.now() });*/ const PostSchema=mongoose.Schema({ Fname:{ type:String, require:true }, Lname:{ type:String, require:true }, DOB:{ type:String, default:Date.now }, }); module.exports=mongoose.model("Userinfo",PostSchema)

Aplicación.js

 const express=require('express'); const app=express(); const mongoose=require('mongoose'); require("dotenv/config"); const bodyParser=require("body-parser") ///Middlewares //app.use(auth); app.use(bodyParser.json()); const postroutes=require("./Routes/Posts"); app.use("/post",postroutes) app.get('/',(req,res)=>{ res.send("we are om") }) app.get('/posts',(req,res)=>{ res.send("we are Post") }) try { mongoose.connect(process.env.DBConnection,{useNewUrlParser: true, useUnifiedTopology: true, useCreateIndex:true},()=>{ console.log("Sucess"); },(error)=>{ console.log(error); }); console.log("ConnectedZZ") } catch (error) { console.log(error); } app.listen(3000);

¿Hay alguna sugerencia para insertar y obtener datos? Al obtener datos, no se obtiene ningún error.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Puede haber varias razones por las que se produjo este problema, pero comencemos con:

Como podemos leer en documentos

Mongoose le permite comenzar a usar sus modelos de inmediato, sin esperar a que Mongoose establezca una conexión con MongoDB. Esto se debe a que la función del modelo de búfer mongoose llama internamente. Este almacenamiento en búfer es conveniente, pero también una fuente común de confusión. Mongoose no arrojará ningún error de forma predeterminada si usa un modelo sin conectarse.

Entonces parece que su model está siendo llamado antes de que se establezca la conexión. Para manejar este error, debe usar .catch() o probar/atrapar con async/ await. Eso debería resolver su problema.


Aquí tienes un fragmento de código de ejemplo:

 (async () => { try { await mongoose.connect(process.env.DBConnection) console.log('MongoDB connected!!'); } catch (err) { console.log('Failed to connect to MongoDB', err); } })()
about 4 years ago · Juan Pablo Isaza Denunciar

0

puede confirmar si la base de datos es correcta antes de llamar a las llamadas de la base de datos.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda